package com.platform.qujia.service;

import com.platform.qujia.pojo.StationClassStructure;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 班结管理Service接口
 *
 * @author qujia
 * @date 2020-12-31
 */
public interface IStationClassStructureService
{
    //从订单表汇总数据
    StationClassStructure selectSummyByPayOrder(StationClassStructure stationClassStructure);

    //批量插入
    int insertStationClassStructureBatch(@Param("stationClassStructureList") List<StationClassStructure>  stationClassStructureList);

    //获取要班结的总和信息
    List<Map<String, String>> selectClassStructureSum(StationClassStructure stationClassStructure);


    /**
     * 查询班结管理
     *
     * @param id 班结管理ID
     * @return 班结管理
     */
    public StationClassStructure selectStationClassStructureById(Long id);

    /**
     * 查询班结管理列表
     *
     * @param stationClassStructure 班结管理
     * @return 班结管理集合
     */
    public List<StationClassStructure> selectStationClassStructureList(StationClassStructure stationClassStructure);

    /**
     * 新增班结管理
     *
     * @param stationClassStructure 班结管理
     * @return 结果
     */
    public int insertStationClassStructure(StationClassStructure stationClassStructure);

    /**
     * 修改班结管理
     *
     * @param stationClassStructure 班结管理
     * @return 结果
     */
    public int updateStationClassStructure(StationClassStructure stationClassStructure);

    /**
     * 批量删除班结管理
     *
     * @param ids 需要删除的班结管理ID
     * @return 结果
     */
    public int deleteStationClassStructureByIds(Long[] ids);

    /**
     * 删除班结管理信息
     *
     * @param id 班结管理ID
     * @return 结果
     */
    public int deleteStationClassStructureById(Long id);

    /**
     * 根据人员班结汇总
     * @param stationClassStructure
     * @return
     */
    public List<StationClassStructure> listPersonnelStructure(StationClassStructure stationClassStructure);

    /**
     * 查询该油站信息最后一次班结信息
     * @param classes
     * @return
     */
    StationClassStructure selectStationClassStructureMax(StationClassStructure classes);

    /**
     * 按油品汇总班结数据
     * @param stationClassStructure
     * @return
     */
    List<StationClassStructure> listOilStructure(StationClassStructure stationClassStructure);

    /**
     * 查询今天班结了几次生成班结
     * @param classesStructure
     * @return
     */
    StationClassStructure selectDistnctClassStructure(StationClassStructure classesStructure);

    /**
     * 根据班次号查询班结汇总数据
     * @param scs
     * @return
     */
    StationClassStructure selectSummyClassStructure(StationClassStructure scs);

    /**
     * 根据员工/支付方式汇总班结数据
     * @param stationClassStructure
     * @return
     */
    List<StationClassStructure> listPersonnelPayStructure(StationClassStructure stationClassStructure);


    public StationClassStructure listClass(StationClassStructure stationClassStructure);

    /**
     * 导出数据
     * @param stationClassStructure
     * @return
     */
    public List<StationClassStructure> selectStationClassStructureExport(StationClassStructure stationClassStructure);

    /**
     * 根据支付方式汇总班结数据
     * @param classStructure
     * @return
     */

    public List<StationClassStructure> listPayStructure(StationClassStructure classStructure);
}
